As is well known, RAID (redundant array of independent (or inexpensive) disks) is a storage technology employed by many data storage systems which combines multiple disk drive components into a logical unit. Data is distributed across the multiple drives in one of several ways, generally referred to as “RAID levels,” depending on what level of redundancy and performance (e.g., in the form of parallel computing) is required.
In RAID system configurations, consistency check (CC) is an important feature which synchronizes and corrects data between a primary drive, also referred to as a protected volume, and one or more secondary (i.e., redundant) drives, also referred to as replica volumes. As part of the synchronization process, a consistency check performs block-by-block verification to ensure that all the data on a replica volume is consistent with the data on the protected volume.
Consistency check is typically achieved by transferring the data stored on a protected volume to an internal buffer and then comparing it with data stored on the replica volume. This procedure is time consuming since each time consistency check is initiated, data comparison is performed on all sectors. When inconsistent data is found, there is also time required to correct the data. Moreover, the time taken to perform consistency check is directly proportional to the storage capacity of the drives; the larger the drives, the longer the amount of time required. With the continual push for increased data storage capacity (the size of modern disk drives exceeding two terabytes), the amount of time required to perform consistency check can significantly impact input/output (I/O) performance in the system.